﻿//-----------------------------------------------------------------------
// <copyright file="Copyright.cs" author="Michael Herndon">
//     Copyright (c) Michael Herndon.  All rights reserved.
// </copyright>
//-----------------------------------------------------------------------

namespace Amplify.Twitter
{
	using System;
	using System.Collections.Generic;
	using System.Linq;
	using System.ServiceModel;
	using System.ServiceModel.Web;
	using System.Text;


	/// <summary>
	/// Contract for the twitter Help methods. 
	/// </summary>
	[ServiceContract]
	public interface IHelpClient
	{

		/// <summary>
		///		Tests the twitter Client and returns true if the Client is running fine.
		/// </summary>
		/// <returns>returns a string message &quot;ok&quot;.</returns>
		/// <exception cref="System.ServiceModel.Security.MessageSecurityException" />
		/// <exception cref="Amplify.Twitter.TwitterException"> Throws when a twitter error occurs. </exception>
		[OperationContract,
			WebInvoke(
				BodyStyle = WebMessageBodyStyle.Bare,
				ResponseFormat = WebMessageFormat.Json,
				UriTemplate = "/help/test.json")]
		string Test();

		/// <summary>
		///		Gets the downtime schedule, its comes as an error,
		///		the string &quot;Error&quot; property.
		/// </summary>
		/// <returns>returns a <see cref="Amplify.Twitter.TwitterError"/>. </returns>
		/// <exception cref="System.ServiceModel.Security.MessageSecurityException" />
		/// <exception cref="Amplify.Twitter.TwitterException"> Throws when a twitter error occurs. </exception>
		[OperationContract,
			WebInvoke(
				BodyStyle = WebMessageBodyStyle.Bare,
				ResponseFormat = WebMessageFormat.Json,
				UriTemplate = "/help/downtime_schedule.json")]
		TwitterError GetScheduledDowntime();
	}
}
